Skip to content

Add CRC unit for STM32F7x MCUs#465

Open
pat-rogers wants to merge 1 commit intoAdaCore:masterfrom
pat-rogers:crc_for_f7x
Open

Add CRC unit for STM32F7x MCUs#465
pat-rogers wants to merge 1 commit intoAdaCore:masterfrom
pat-rogers:crc_for_f7x

Conversation

@pat-rogers
Copy link
Copy Markdown
Contributor

@pat-rogers pat-rogers commented Apr 6, 2026

The CRC unit on the F7x MCUs (and others) has the additional ability to define the initial value and the polynomial value, but the same core capabilities of the F4 are present.

  • devices/stm32f7x/stm32-device.adb and ads:

    • Add declaration of CRC unit and procedure to enable the clock
    • Correct comment block header describing the package spec (it had said it was for F4x)
  • arch/ARM/STM32/drivers/crc_stm32f7/*

    • Add new source folder and source files for the STM32 CRC unit package spec and body, with the DMA child package.
    • Add readme.txt decribing these new files, explaining that the F7x has additional capabilities but the same core
      abilities as the F4x. These files are just a copy of the F4 sources, but that way we can enhance them to add the F7x
      capabilities eventually, without precluding their use with Fx devices in the meantime. Worth exploring use of Ada's
      static inheritance, using the F4 version as the parent type, but IFF the additional F7 capabilities don't require additional
      record components.
  • boards/stm32f746_discovery/stm32f746_discovery_full.gpr:

    • Manually added source new folder for the F7x CRC
  • scripts/config/devices.py:

    • Added source new folder for the F7x CRC

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant